Web services are becoming very popular as more and more web sites and applications are available to consumers. Some examples of web services are Facebook, Google Voice, Twitter, etc. When an end user wants to access a web service, the end user downloads or installs an application for the web service on his/her device. An application that is loaded on an end user device is commonly referred to as a “mobile app” or a “phone app”. When the end user runs the application on his/her device, the application will generate a web service request and send the web service request to a server that is able to provide the web service. The web service request is typically sent using an open Application Programming Interface (API) that is defined for web-based services. For example, the open API may be Simple Object Access Protocol (SOAP), RESTful, ParlayX, etc. The server or an intermediate gateway converts the open API request to a request in the protocol supported by the server. The server then provides the web service to the end user.
Because of the popularity of web services, service providers are continually looking for ways to improve the quality of the web services from the point of view of the consumer and the service provider.